Incorporating Better Register Allocation into Jikes

نویسندگان

  • Jonathan Derryberry
  • Manfred Lau
چکیده

In dynamically compiled code, it is important not only that the compiler produce fast code, but also that the compiler itself costs little overhead to the runtime application. These two competing goals motivate the importance of accurate cost-benefit analysis for any optimizations performed in a dynamic compilation system. The Jikes RVM, which performs Just-In-Time (JIT) compilation of Java bytecodes, is an example of such a dynamic compiler. One of the most important components of a JIT compiler is register allocation because memory accesses are becoming increasingly expensive relative to register accesses. Jikes has opted to use exclusively a linear scan register allocator in its optimizing compiler because the linear scan algorithm is fast and provides performance nearly as good as more complicated register allocation algorithms. This paper seeks to improve the runtime performance of applications run by the Jikes RVM by incorporating a more exhaustive register allocation scheme for use on code for which the benefit would be large enough to justify the extra compilation effort. This was accomplished with partial success by adding an additional optimization level to the Jikes RVM and calibrating the necessary cost-benefit parameters in the configuration files. Our results suggest that the modifications we made improve the performance of the Jikes RVM on computationally intensive code without sacrificing much performance on smaller jobs.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Hybrid Optimizations: Which Optimization Algorithm to Use?

We introduce a new class of compiler heuristics: hybrid optimizations. Hybrid optimizations choose dynamically at compile time which optimization algorithm to apply from a set of different algorithms that implement the same optimization. They use a heuristic to predict the most appropriate algorithm for each piece of code being optimized. Specifically, we construct a hybrid register allocator t...

متن کامل

Meaningful Type Names as a Basis for Object Lifetime Prediction

Object lifetime prediction can identify short-lived and longlived objects at or before their heap-allocation point. This prediction is an increasingly important technique to enable optimization of runtime decisions for high-performance garbage collection. This paper shows that extracting information from object type names can give a reliable and efficient way to make such object lifetime predic...

متن کامل

What’s Wrong with Graph Coloring?

Graph coloring is the de facto standard technique for register allocation within a compiler. In this paper we examine the intuition that a better coloring algorithm results in better register allocation. By replacing the coloring phase of the gcc compiler’s register allocator with an optimal coloring algorithm, we demonstrate both the importance of extending the graph coloring model to better e...

متن کامل

PALF: compiler supports for irregular register files in clustered VLIW DSP processors

Wide varieties of register file architectures — developed for embedded processors — have turned to aim at reducing the power dissipation and die size these years, by contrast with the traditional unified register file structures. This article presents a novel register allocation scheme for a clustered VLIW DSP, which is designed with distinctively banked register files in which port access is h...

متن کامل

Global Register Allocation Based on Graph Fusion

A register allocator must effectively deal with three issues: live range splitting, live range spilling, and register assignment. This paper presents a new coloring-based global register allocation algorithm that addresses all three issues in an integrated way: the algorithm starts with an interference graph for each region of the program, where a region can be a basic block, a loop nest, a sup...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003